/* Based on http://www.webdesignerwall.com/demo/css-buttons.html */
.button {
    display: inline-block;
    vertical-align: baseline;
    outline: none;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    color: #FFF;
    font-size: 16px;
    padding: .5em 1em;
    text-shadow: 0 1px 1px rgba(0,0,0,.3);
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    box-shadow: 0 1px 2px rgba(0,0,0,.2);
    -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
    -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
    /* zoom and *display = ie7 hack for display:inline-block */
    zoom: 1;
    *display: inline;
}
.button:hover {
    text-decoration: none;
}
.button:active {
    position: relative;
    top: 1px;
}
.button-medium {
    font-size: 14px;
}
.button-small {
    font-size: 12px;
}

/* --- colors --- */

/* default (blue) */
.button, .button-blue {
    border: solid 1px #0076a3;
    background: #0095cd;
    background: -moz-linear-gradient(top, #00adee, #0078a5);
    background: -webkit-gradient(linear, left top, left bottom, from(#00adee), to(#0078a5));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00adee', endColorstr='#0078a5');
}
.button:hover, .button-blue:hover {
    background: #007ead;
    background: -moz-linear-gradient(top, #0095cc, #00678e);
    background: -webkit-gradient(linear, left top, left bottom, from(#0095cc), to(#00678e));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0095cc', endColorstr='#00678e');
}
.button:active, .button-blue:active {
    background: -moz-linear-gradient(top, #0078a5, #00adee);
    background: -webkit-gradient(linear, left top, left bottom, from(#0078a5), to(#00adee));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0078a5', endColorstr='#00adee');
}

/* black */
.button-black {
    border: solid 1px #333;
    background: #333;
    background: -moz-linear-gradient(top, #666, #000);
    background: -webkit-gradient(linear, left top, left bottom, from(#666), to(#000));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#000000');
}
.button-black:hover {
    background: #000;
    background: -moz-linear-gradient(top, #444, #000);
    background: -webkit-gradient(linear, left top, left bottom, from(#444), to(#000));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#444444', endColorstr='#000000');
}
.button-black:active {
    background: -moz-linear-gradient(top, #000, #444);
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(#444));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#666666');
}

/* gray */
.button-gray {
    border: solid 1px #555;
    background: #6e6e6e;
    background: -moz-linear-gradient(top, #888, #575757);
    background: -webkit-gradient(linear, left top, left bottom, from(#888), to(#575757));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#888888', endColorstr='#575757');
}
.button-gray:hover {
    background: #616161;
    background: -moz-linear-gradient(top, #757575, #4b4b4b);
    background: -webkit-gradient(linear, left top, left bottom, from(#757575), to(#4b4b4b));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#757575', endColorstr='#4b4b4b');
}
.button-gray:active {
    background: -moz-linear-gradient(top, #575757, #888);
    background: -webkit-gradient(linear, left top, left bottom, from(#575757), to(#888));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#575757', endColorstr='#888888');
}

/* white */
.button-white {
    color: #333333;
    border: solid 1px #b7b7b7;
    background: #fff;
    background: -moz-linear-gradient(top, #fff, #ededed);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ededed));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed');
}
.button-white:hover {
    background: #ededed;
    background: -moz-linear-gradient(top, #fff, #dcdcdc);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#dcdcdc');
}
.button-white:active {
    background: -moz-linear-gradient(top, #ededed, #fff);
    background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#fff));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#ffffff');
}

/* orange */
.button-orange {
    border: solid 1px #da7c0c;
    background: #f78d1d;
    background: -moz-linear-gradient(top, #faa51a, #f47a20);
    background: -webkit-gradient(linear, left top, left bottom, from(#faa51a), to(#f47a20));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#faa51a', endColorstr='#f47a20');
}
.button-orange:hover {
    background: #f47c20;
    background: -moz-linear-gradient(top, #f88e11, #f06015);
    background: -webkit-gradient(linear, left top, left bottom, from(#f88e11), to(#f06015));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f88e11', endColorstr='#f06015');
}
.button-orange:active {
    background: -moz-linear-gradient(top, #f47a20, #faa51a);
    background: -webkit-gradient(linear, left top, left bottom, from(#f47a20), to(#faa51a));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47a20', endColorstr='#faa51a');
}

/* red */
.button-red {
    border: solid 1px #980c10;
    background: #d81b21;
    background: -moz-linear-gradient(top, #ed1c24, #aa1317);
    background: -webkit-gradient(linear, left top, left bottom, from(#ed1c24), to(#aa1317));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ed1c24', endColorstr='#aa1317');
}
.button-red:hover {
    background: #b61318;
    background: -moz-linear-gradient(top, #c9151b, #a11115);
    background: -webkit-gradient(linear, left top, left bottom, from(#c9151b), to(#a11115));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#c9151b', endColorstr='#a11115');
}
.button-red:active {
    background: -moz-linear-gradient(top, #aa1317, #ed1c24);
    background: -webkit-gradient(linear, left top, left bottom, from(#aa1317), to(#ed1c24));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#aa1317', endColorstr='#ed1c24');
}

/* green */
.button-green {
    border: solid 1px #538312;
    background: #64991e;
    background: -moz-linear-gradient(top, #7db72f, #4e7d0e);
    background: -webkit-gradient(linear, left top, left bottom, from(#7db72f), to(#4e7d0e));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7db72f', endColorstr='#4e7d0e');
}
.button-green:hover {
    background: #538018;
    background: -moz-linear-gradient(top, #6b9d28, #436b0c);
    background: -webkit-gradient(linear, left top, left bottom, from(#6b9d28), to(#436b0c));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6b9d28', endColorstr='#436b0c');
}
.button-green:active {
    background: -moz-linear-gradient(top, #4e7d0e, #7db72f);
    background: -webkit-gradient(linear, left top, left bottom, from(#4e7d0e), to(#7db72f));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4e7d0e', endColorstr='#7db72f');
}
